﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace Neo4JConnector.Core
{
    public class Validators
    {
        /// <summary>
        /// 检查 label 是否符合 Neo4j 的命名规则
        /// 规则：
        /// 1. 必须以字母开头
        /// 2. 后面可以跟字母、数字和下划线
        /// 3. 不允许包含特殊字符（如 -、空格等）
        /// </summary>
        public static bool IsValidLabel(string label)
        {
            if (string.IsNullOrWhiteSpace(label))
                return false;

            // 正则：首字母必须是 A-Z 或 a-z，后面可以是 A-Z、a-z、0-9、_
            return Regex.IsMatch(label, @"^[A-Za-z][A-Za-z0-9_]*$");
        }
    }
}
